Low level Architecture - independence of Glasgow ParallelHaskell ( GpH )
نویسندگان
چکیده
In principle, pure functional languages promise straightforward architecture-independent parallelism. We investigate the validity of this claim in the context of our highly-portable implementation of an implicitly-parallel functional language: the GUM implementation of Glasgow Parallel Haskell (GpH). We focus here on the low-level architecture independence of GUM: the high-level architecture independence of the GpH programming model is discussed elsewhere. Low-level architecture independence is achieved by chosing a message-passing model for GUM, and implementing it using portable C and a widely-supported message-passing library like PVM. In fact GUM is largely independent of the message-passing library, and has been adapted to use MPI and the CM-5 CMMD libraries as well as PVM. As a result, GUM is easily ported, and is currently available on seven platforms including shared-memory machines , distributed-memory machines, and networks of workstations. We provide indicative measurements of the eeciency and speedups delivered by GUM on a range of architectures.
منابع مشابه
GpH: An Architecture-independent Functional Language
In principle, pure functional languages promise straightforward architecture-independent parallelism. We investigate the validity of this claim in the context of our highly-portable implementation of an implicitly-parallel functional language: the GUM implementation of Glasgow Parallel Haskell (GpH). We discuss architecture independence at two levels: low-level (i.e. the implementation) and hig...
متن کاملParallel Skeletons In Glasgow Distributed Haskell
Parallel programming is an important tool when trying to handle large problems that can not be dealt with using conventional single processors systems; either parallel machines or clusters of machines are used to provide the computational power needed. However parallel programming is an inherently difficult task and any tool or language that can provide suitable abstractions making the programm...
متن کاملGpH and Eden: Comparing two parallel functional languages on a Beowulf cluster
We investigate two similar but contrasting parallel functional language designs: Eden and GPH. Both languages use the non-strict functional language Haskell as a core expression language, both are implemented as extensions of the high performance Glasgow Haskell Compiler (GHC), and both implementations are available on the same distributed architecture: a Beowulf cluster. This allows an excepti...
متن کاملGo-faster Haskell Or: Data-intensive Programming in Parallel Haskell Draft
We have recently constructed an integrated programming environment to support programming in Glasgow Parallel Haskell GpH. This paper descibes the construction of several data-intensive parallel programs using the environment. It focuses on a road-traac accident application because it is a real problem with real data, and is the rst non-trivial GpH program to achieve wall-clock speedups | a fac...
متن کاملArchitecture aware parallel programming in Glasgow parallel Haskell (GPH)
General purpose computing architectures are evolving quickly to become manycore and hierarchical: i.e. a core can communicate more quickly locally than globally. To be effective on such architectures, programming models must be aware of the communications hierarchy. This thesis investigates a programming model that aims to share the responsibility of task placement, load balance, thread creatio...
متن کامل